package com.ziq.zcamp.api.repository

import com.gmlive.camp.data.exception.LocalException
import com.ziq.zcamp.api.service.NetWorkException
import com.ziq.zcamp.bean.topics.TopicsDetailsInfo
import com.ziq.zcamp.bean.topics.TopicsInfo
import com.ziq.zcamp.bean.topics.TopicsPostList


/**
 * 运营消息的Repository
 */
interface PostTopicsRepository : Repository{

    /**
     * 客户端搜索话题列表
     * @param keyword 关键词
     * @return 话题搜索列表
     * @throws LocalException : 网络请求时本地出现的异常，如网络请求超时，或者json解析异常等信息
     * @throws NetWorkException : 网络请求时后台返回回来的错误信息
     */
    @Throws(LocalException::class, NetWorkException::class)
    suspend fun topicSearch(keyword:String): List<TopicsInfo>


    /**
     * 话题详情
     * @param name 话题名称
     * @return 话题详情
     * @throws LocalException : 网络请求时本地出现的异常，如网络请求超时，或者json解析异常等信息
     * @throws NetWorkException : 网络请求时后台返回回来的错误信息
     */
    @Throws(LocalException::class, NetWorkException::class)
    suspend fun topicDetails(name:String): TopicsDetailsInfo




}